package Logica;


import Data.PaisOcupado;
import Data.Pais;
import Data.UnidadMilitar;
import MyLinkedList.*;
import javax.swing.JOptionPane;


/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

/**
 *
 * @author Silvana
 */
public class Management
{
    private LinkedList paisesEnJuego= new LinkedList ();
    private LinkedList unidadesMilitares= new LinkedList ();
    private LinkedList unidad5= new LinkedList ();
    private LinkedList paisOcupado= new LinkedList ();

    public LinkedList getPaisesEnJuego(){
        return paisesEnJuego;
    }

    public LinkedList getPaisOcupado() {
        return paisOcupado;
    }

    public LinkedList getUnidad5() {
        return unidad5;
    }

    public LinkedList getUnidadMilitar() {
        return unidadesMilitares;
    }
    
    public  boolean insertarPais (Pais p)
    {
       return paisesEnJuego.add(p);
    }
    
    
    public void agregarUnidadesMilitares(LinkedList u){
        ListIterator iter= u.lisIterator();
        while(iter.hasNext()){
            unidadesMilitares.add((UnidadMilitar)iter.next());            
        }
        JOptionPane.showMessageDialog(null,unidadesMilitares);
        
    }
    public void agregarPaises(LinkedList p)
    {
        ListIterator iter= p.lisIterator();
        while(iter.hasNext()){
            paisesEnJuego.add((Pais)iter.next());            
        }
        JOptionPane.showMessageDialog(null,paisesEnJuego);
    }
    public void agregarPaises(Pais p){
        paisesEnJuego.add(p);
    }
    
    public Pais borrarPais (Pais p)
    {
       return (Pais)  paisesEnJuego.remove(p);
     
    }
    
    public Pais borrarPais ()
    {
       return (Pais)  paisesEnJuego.remove();
    }
    
    public Pais borrarPais (int n)
    {
        return (Pais) paisesEnJuego.remove(n);
    }
    
//    public Pais borrarAleatorio ()
//    {
//       int aux = paisesEnJuego.size();
//       String num= String.valueOf(aux);
//       
//       int tam=num.length();
//       int multiplicador=1;
//       for (int i=1; i<tam; i++)
//       {
//           multiplicador=multiplicador*10;
//       }
//       int i=(int)Math.round(Math.random()* multiplicador );
//      return  borrarPais (multiplicador);
//    }
    
    public boolean insertarUnidad (UnidadMilitar u)
    {
        return  unidadesMilitares.add(u);
    }
    
    public String mostraPaises ()
    {
        return paisesEnJuego.toString();
    }
    
    public String mostraUnidad ()
    {
        return unidadesMilitares.toString();
    }
    
    public String mostrarPoderFuego ()
    {
        return unidad5.toString();
    }
    
    public void generarPaisOcupado ()
    {
        int p = paisesEnJuego.size();
        int u= unidadesMilitares.size();
        ListIterator iteratorPais = paisesEnJuego.lisIterator();
        ListIterator iteratorUnidad = unidadesMilitares.lisIterator();
        PaisOcupado po=null;
        while (iteratorUnidad.hasNext())  
        {
            
            UnidadMilitar aux2= (UnidadMilitar)iteratorUnidad.next();
            if (!iteratorPais.hasNext())
            { 
                return;
            }
            Pais aux= (Pais)iteratorPais.next();
            po = new PaisOcupado (aux, aux2);
        }
        
      }

   
    
    
}
